{
 "cells": [
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Forecasting time series with missing values"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "In many real use cases of forecasting, although historical data are available, it is common for the time series to be incomplete. The presence of missing values in the data is a major problem since most forecasting algorithms require the time series to be complete in order to train a model.\n",
    "\n",
    "A commonly employed strategy to overcome this problem is to impute missing values before training the model, for example, using a moving average. However, the quality of the imputations may not be good, impairing the training of the model. One way to improve the imputation strategy is to combine it with [weighted time series forecasting](../user_guides/weighted-time-series-forecasting.html). The latter consists of reducing the weight of the imputed observations and thus their influence during model training.\n",
    "\n",
    " This document shows two examples of how **skforecast** makes it easy to apply this strategy."
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Libraries and data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Libraries\n",
    "# ==============================================================================\n",
    "import pandas as pd\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "from skforecast.plot import set_dark_theme\n",
    "from skforecast.datasets import fetch_dataset\n",
    "from lightgbm import LGBMRegressor\n",
    "from skforecast.recursive import ForecasterRecursive\n",
    "from skforecast.model_selection import TimeSeriesFold\n",
    "from skforecast.model_selection import backtesting_forecaster"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<div class=\"admonition note\" name=\"html-admonition\" style=\"background: rgba(0,184,212,.1); padding-top: 0px; padding-bottom: 6px; border-radius: 8px; border-left: 8px solid #00b8d4; border-color: #00b8d4; padding-left: 10px; padding-right: 10px;\">\n",
    "\n",
    "<p class=\"title\">\n",
    "    <i style=\"font-size: 18px; color:#00b8d4;\"></i>\n",
    "    <b style=\"color: #00b8d4;\">&#9998 Note</b>\n",
    "</p>\n",
    "\n",
    "In this document, a forecaster of type <code>ForecasterRecursive</code> is used. The same strategy can be applied with any forecaster from skforecast.\n",
    "\n",
    "</div>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">╭──────────────────────────────────── <span style=\"font-weight: bold\">bicimad</span> ─────────────────────────────────────╮\n",
       "│ <span style=\"font-weight: bold\">Description:</span>                                                                     │\n",
       "│ This dataset contains the daily users of the bicycle rental service (BiciMad) in │\n",
       "│ the city of Madrid (Spain) from 2014-06-23 to 2022-09-30.                        │\n",
       "│                                                                                  │\n",
       "│ <span style=\"font-weight: bold\">Source:</span>                                                                          │\n",
       "│ The original data was obtained from: Portal de datos abiertos del Ayuntamiento   │\n",
       "│ de Madrid https://datos.madrid.es/portal/site/egob                               │\n",
       "│                                                                                  │\n",
       "│ <span style=\"font-weight: bold\">URL:</span>                                                                             │\n",
       "│ https://raw.githubusercontent.com/skforecast/skforecast-                         │\n",
       "│ datasets/main/data/bicimad_users.csv                                             │\n",
       "│                                                                                  │\n",
       "│ <span style=\"font-weight: bold\">Shape:</span> 3022 rows x 1 columns                                                     │\n",
       "╰──────────────────────────────────────────────────────────────────────────────────╯\n",
       "</pre>\n"
      ],
      "text/plain": [
       "╭──────────────────────────────────── \u001b[1mbicimad\u001b[0m ─────────────────────────────────────╮\n",
       "│ \u001b[1mDescription:\u001b[0m                                                                     │\n",
       "│ This dataset contains the daily users of the bicycle rental service (BiciMad) in │\n",
       "│ the city of Madrid (Spain) from 2014-06-23 to 2022-09-30.                        │\n",
       "│                                                                                  │\n",
       "│ \u001b[1mSource:\u001b[0m                                                                          │\n",
       "│ The original data was obtained from: Portal de datos abiertos del Ayuntamiento   │\n",
       "│ de Madrid https://datos.madrid.es/portal/site/egob                               │\n",
       "│                                                                                  │\n",
       "│ \u001b[1mURL:\u001b[0m                                                                             │\n",
       "│ https://raw.githubusercontent.com/skforecast/skforecast-                         │\n",
       "│ datasets/main/data/bicimad_users.csv                                             │\n",
       "│                                                                                  │\n",
       "│ \u001b[1mShape:\u001b[0m 3022 rows x 1 columns                                                     │\n",
       "╰──────────────────────────────────────────────────────────────────────────────────╯\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>users</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>date</th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2014-06-23</th>\n",
       "      <td>99</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2014-06-24</th>\n",
       "      <td>72</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2014-06-25</th>\n",
       "      <td>119</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "            users\n",
       "date             \n",
       "2014-06-23     99\n",
       "2014-06-24     72\n",
       "2014-06-25    119"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Data download\n",
    "# ==============================================================================\n",
    "data = fetch_dataset(\"bicimad\")\n",
    "data.head(3)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Generating gaps with missing values\n",
    "# ==============================================================================\n",
    "gaps = [\n",
    "    ['2020-09-01', '2020-10-10'],\n",
    "    ['2020-11-08', '2020-12-15'],\n",
    "]\n",
    "\n",
    "for gap in gaps:\n",
    "    data.loc[gap[0]:gap[1]] = np.nan"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Dates train : 2020-06-01 00:00:00 --- 2021-03-01 00:00:00  (n=274)\n",
      "Dates test  : 2021-03-01 00:00:00 --- 2021-06-01 00:00:00  (n=93)\n"
     ]
    }
   ],
   "source": [
    "# Split data into train-test\n",
    "# ==============================================================================\n",
    "data = data.loc['2020-06-01': '2021-06-01']\n",
    "end_train = '2021-03-01'\n",
    "data_train = data.loc[: end_train, :]\n",
    "data_test  = data.loc[end_train:, :]\n",
    "\n",
    "print(f\"Dates train : {data_train.index.min()} --- {data_train.index.max()}  (n={len(data_train)})\")\n",
    "print(f\"Dates test  : {data_test.index.min()} --- {data_test.index.max()}  (n={len(data_test)})\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\Users\\jaesc2\\AppData\\Local\\Temp\\ipykernel_7800\\3506748202.py:9: UserWarning: This axis already has a converter set and is updating to a potentially incompatible converter\n",
      "  ax.plot(\n"
     ]
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 800x350 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Time series plot\n",
    "# ==============================================================================\n",
    "set_dark_theme()\n",
    "fig, ax = plt.subplots(figsize=(8, 3.5))\n",
    "data_train.users.plot(ax=ax, label='train', linewidth=1)\n",
    "data_test.users.plot(ax=ax, label='test', linewidth=1)\n",
    "\n",
    "for gap in gaps:\n",
    "    ax.plot(\n",
    "        [pd.to_datetime(gap[0]), pd.to_datetime(gap[1])],\n",
    "        [data.users[pd.to_datetime(gap[0]) - pd.Timedelta(days=1)],\n",
    "         data.users[pd.to_datetime(gap[1]) + pd.Timedelta(days=1)]],\n",
    "        color = 'red',\n",
    "        linestyle = '--',\n",
    "        label = 'gap'\n",
    "    )\n",
    "\n",
    "ax.set_title('Number of users BiciMAD')\n",
    "handles, labels = plt.gca().get_legend_handles_labels()\n",
    "by_label = dict(zip(labels, handles))\n",
    "ax.legend(by_label.values(), by_label.keys(), loc='lower right');"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Impute missing values\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Value imputation using linear interpolation\n",
    "# ======================================================================================\n",
    "data['users_imputed'] = data['users'].interpolate(method='linear')\n",
    "data_train = data.loc[: end_train, :]\n",
    "data_test  = data.loc[end_train:, :]"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Give weight of zero to imputed values"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "To minimize the influence on the model of imputed values, a custom function is defined to create weights following the rules:\n",
    "\n",
    "+ Weight of 0 if the index date has been imputed or is within 14 days ahead of an imputed day.\n",
    "\n",
    "+ Weight of 1 otherwise.\n",
    "\n",
    "If an observation has a weight of 0, it has no influence at all during model training."
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<div class=\"admonition note\" name=\"html-admonition\" style=\"background: rgba(0,184,212,.1); padding-top: 0px; padding-bottom: 6px; border-radius: 8px; border-left: 8px solid #00b8d4; border-color: #00b8d4; padding-left: 10px; padding-right: 10px;\">\n",
    "\n",
    "<p class=\"title\">\n",
    "    <i style=\"font-size: 18px; color:#00b8d4;\"></i>\n",
    "    <b style=\"color: #00b8d4;\">&#9998 Note</b>\n",
    "</p>\n",
    "\n",
    "Imputed values should neither participate in the training process as a target nor as a predictor (lag). Therefore, values within a window size as large as the lags used should also be excluded.\n",
    "\n",
    "</div>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Custom function to create weights\n",
    "# ==============================================================================\n",
    "def custom_weights(index):\n",
    "    \"\"\"\n",
    "    Return 0 if index is in any gap.\n",
    "    \"\"\"\n",
    "    gaps = [\n",
    "        ['2020-09-01', '2020-10-10'],\n",
    "        ['2020-11-08', '2020-12-15'],\n",
    "    ]\n",
    "    \n",
    "    missing_dates = [\n",
    "        pd.date_range(\n",
    "            start = pd.to_datetime(gap[0]) + pd.Timedelta('14d'),\n",
    "            end   = pd.to_datetime(gap[1]) + pd.Timedelta('14d'),\n",
    "            freq  = 'D'\n",
    "        ) \n",
    "        for gap in gaps\n",
    "    ]\n",
    "    missing_dates = pd.DatetimeIndex(np.concatenate(missing_dates))   \n",
    "    weights = np.where(index.isin(missing_dates), 0, 1)\n",
    "\n",
    "    return weights"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "`ForecasterRecursive` is trained including the `custom_weights` function."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "387d1492d195468ba9be9bfd6863997a",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "  0%|          | 0/14 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>mean_absolute_error</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1904.830714</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   mean_absolute_error\n",
       "0          1904.830714"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Create a recursive multi-step forecaster (ForecasterRecursive)\n",
    "# ==============================================================================\n",
    "forecaster = ForecasterRecursive(\n",
    "                 estimator   = LGBMRegressor(random_state=123, verbose=-1),\n",
    "                 lags        = 14,\n",
    "                 weight_func = custom_weights\n",
    "             )\n",
    "\n",
    "# Backtesting: predict the next 7 days at a time.\n",
    "# ==============================================================================\n",
    "cv = TimeSeriesFold(\n",
    "         steps              = 7,\n",
    "         initial_train_size = len(data.loc[:end_train]),\n",
    "         refit              = True,\n",
    "         fixed_train_size   = False,\n",
    "     )\n",
    "\n",
    "metric, predictions = backtesting_forecaster(\n",
    "                          forecaster    = forecaster,\n",
    "                          y             = data.users_imputed,\n",
    "                          cv            = cv,\n",
    "                          metric        = 'mean_absolute_error',\n",
    "                          verbose       = False,\n",
    "                          show_progress = True\n",
    "                      )\n",
    "\n",
    "metric"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>fold</th>\n",
       "      <th>pred</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2021-03-02</th>\n",
       "      <td>0</td>\n",
       "      <td>10524.159747</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2021-03-03</th>\n",
       "      <td>0</td>\n",
       "      <td>10087.283682</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2021-03-04</th>\n",
       "      <td>0</td>\n",
       "      <td>8882.926166</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2021-03-05</th>\n",
       "      <td>0</td>\n",
       "      <td>9474.810215</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "            fold          pred\n",
       "2021-03-02     0  10524.159747\n",
       "2021-03-03     0  10087.283682\n",
       "2021-03-04     0   8882.926166\n",
       "2021-03-05     0   9474.810215"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Backtest predictions\n",
    "# ==============================================================================\n",
    "predictions.head(4)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "skforecast_py12",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.11"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": false,
   "sideBar": true,
   "skip_h1_title": true,
   "title_cell": "Tabla de contenidos",
   "title_sidebar": "Tabla de contenidos",
   "toc_cell": false,
   "toc_position": {
    "height": "calc(100% - 180px)",
    "left": "10px",
    "top": "150px",
    "width": "204px"
   },
   "toc_section_display": true,
   "toc_window_display": true
  },
  "varInspector": {
   "cols": {
    "lenName": 16,
    "lenType": 16,
    "lenVar": 40
   },
   "kernels_config": {
    "python": {
     "delete_cmd_postfix": "",
     "delete_cmd_prefix": "del ",
     "library": "var_list.py",
     "varRefreshCmd": "print(var_dic_list())"
    },
    "r": {
     "delete_cmd_postfix": ") ",
     "delete_cmd_prefix": "rm(",
     "library": "var_list.r",
     "varRefreshCmd": "cat(var_dic_list()) "
    }
   },
   "position": {
    "height": "144px",
    "left": "995px",
    "right": "20px",
    "top": "120px",
    "width": "350px"
   },
   "types_to_exclude": [
    "module",
    "function",
    "builtin_function_or_method",
    "instance",
    "_Feature"
   ],
   "window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
